﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;

namespace housingsafety.server.Entities.DataModels
{
    [Table("zm_system_log")]
    public partial class ZmSystemLog : Repository.IEntity
    {
        [Key]
        [Column("id")]
        [StringLength(255)]
        public string Id { get; set; }
        [Required]
        [Column("user_id")]
        [StringLength(50)]
        public string UserId { get; set; }
        [Column("user_name")]
        [StringLength(255)]
        public string UserName { get; set; }
        [Column("action_name")]
        [StringLength(255)]
        public string ActionName { get; set; }
        [Column("is_delete")]
        public short? IsDelete { get; set; }
        [Column("delete_on", TypeName = "timestamp(6) without time zone")]
        public DateTime? DeleteOn { get; set; }
        [Column("create_on", TypeName = "timestamp(6) without time zone")]
        public DateTime CreateOn { get; set; }
        [Column("modified_on", TypeName = "timestamp(6) without time zone")]
        public DateTime? ModifiedOn { get; set; }
        [Required]
        [Column("path")]
        [StringLength(255)]
        public string Path { get; set; }
        [Required]
        [Column("login_type")]
        [StringLength(255)]
        public string LoginType { get; set; }
        [Column("log_time", TypeName = "timestamp(6) without time zone")]
        public DateTime LogTime { get; set; }
        [Required]
        [Column("ip")]
        [StringLength(20)]
        public string Ip { get; set; }
        [Column("respret", TypeName = "json")]
        public string Respret { get; set; }
        [Column("mobile_brand")]
        [StringLength(255)]
        public string MobileBrand { get; set; }
        [Column("mobile_system")]
        [StringLength(255)]
        public string MobileSystem { get; set; }
        [Column("app_version")]
        [StringLength(255)]
        public string AppVersion { get; set; }
        [Column("error_stack")]
        public string ErrorStack { get; set; }
    }
}
